package model

import (
	"gorm.io/gorm"
	"time"
)

type Order struct {
	Id          uint           `gorm:"column:id;type:bigint(20) UNSIGNED;comment:订单ID;primaryKey;not null;" json:"id"`                           // 订单ID
	UserId      uint           `gorm:"column:user_id;type:bigint(20);comment:订单用户;not null;" json:"user_id"`                                     // 订单用户
	ProductId   uint           `gorm:"column:product_id;type:bigint(20);comment:订单商品;not null;" json:"product_id"`                               // 订单商品
	PayType     uint           `gorm:"column:pay_type;type:tinyint(1);comment:1 支付宝 2 微信 3 银联;not null;" json:"pay_type"`                        // 1 支付宝 2 微信 3 银联
	OrderStatus uint           `gorm:"column:order_status;type:tinyint(1);comment:1  已发货 2 已交付 3 未发货;not null;" json:"order_status"`             // 1  已发货 2 已交付 3 未发货
	CreatedAt   time.Time      `gorm:"column:created_at;type:datetime(3);comment:创建时间;not null;default:CURRENT_TIMESTAMP(3);" json:"created_at"` // 创建时间
	UpdateAt    time.Time      `gorm:"column:update_at;type:datetime(3);comment:修改时间;not null;default:CURRENT_TIMESTAMP(3);" json:"update_at"`   // 修改时间
	DeleteAt    gorm.DeletedAt `gorm:"column:delete_at;type:datetime;comment:删除时间;default:NULL;" json:"delete_at"`                               // 删除时间
}

func (u *Order) TableName() string {
	return "order"
}
